﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace CommonLib
{
    /// <summary>
    /// Представляет информацию о пересечениях луча с объектом
    /// </summary>
    public class Intersections
    {
        public Intersections()
        {
            HitInformations = new List<HitInfo>();
        }
        public List<HitInfo> HitInformations { get; set; }
        public void AddIntersection(HitInfo info)
        {
            HitInformations.Add(info);
        }
        public HitInfo GetBestIntersection()
        {
            HitInformations.Sort(Comparer);
            if (HitInformations.Count > 0)
                return HitInformations[0];
            return null;
        }
        private int Comparer(HitInfo info1, HitInfo info2)
        {
            return (info1.HitTime < info2.HitTime ? -1 : (info1.HitTime == info2.HitTime ? 0 : 1));
        }
    }
}
